Network adapters, also referred to as network interface cards (NICs), are readily commercially available to support any of a wide variety of network topologies. One or more network adapters may be implemented in a configuration known as “teaming” to provide a plurality of ports (also referred to as “team members”) logically coupled in parallel to appear as a single virtual network adapter. Although teaming is not limited to use in servers, teaming is particularly common in servers to support the demand for high throughput (i.e., load balancing) and resource redundancy to increase reliability (i.e., fault tolerance).
Fault tolerant teaming typically implements multiple ports, wherein one port is “active” and designated as “primary” while the other ports are designated as “secondary” and are placed in a “standby” mode. A secondary port remains largely idle until activated to replace a failed primary port. Accordingly, the network connection is not interrupted when a port fails.
Load balancing teaming typically combines multiple ports to increase the aggregate throughput of data traffic. The port designated as “primary” typically handles all of the data received by the team, but various algorithms may be employed to balance network traffic across one or more “secondary” ports to meet increasing throughput demand (e.g., where one port would have otherwise reached its maximum throughput). Load-balancing teaming inherently provides fault tolerance, but most commonly at a lower aggregate throughput than the fully functional team.
The process of assigning a primary team member is typically by default (e.g., the port occupying the lowest numbered slot is designated as primary and all other ports are designated as secondary). More sophisticated teaming allows the user or installation technician to designate the primary team member, e.g., based on the lowest cost path at the time of installation.